package com.campus.secondhand.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;

import lombok.Data;

import java.util.List;

/**
 * 学校信息实体类
 */
@Data
@TableName(value = "school", autoResultMap = true)
public class School {

    /**
     * 学校ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 学校名称
     */
    @TableField("name")
    private String name;

    /**
     * 学校logo图片路径
     */
    @TableField("logo")
    private String logo;

    /**
     * 学校封面图片路径
     */
    @TableField("cover")
    private String cover;

    /**
     * 平台商品数量
     */
    @TableField("product_count")
    private Integer productCount;

    /**
     * 平台成员数量
     */
    @TableField("member_count")
    private Integer memberCount;

    /**
     * 收藏数量
     */
    @TableField("favorite_count")
    private Integer favoriteCount;

    /**
     * 学校标签(JSON数组)
     */
    @TableField(value = "tags", typeHandler = JacksonTypeHandler.class)
    private List<String> tags;

    /**
     * 学校描述(JSON数组)
     */
    @TableField(value = "description", typeHandler = JacksonTypeHandler.class)
    private List<String> description;

    /**
     * 校园图片(JSON数组)
     */
    @TableField(value = "campus_images", typeHandler = JacksonTypeHandler.class)
    private List<String> campusImages;

    /**
     * 学校地址
     */
    @TableField("address")
    private String address;

    /**
     * 省份
     */
    @TableField("province")
    private String province;

    /**
     * 城市
     */
    @TableField("city")
    private String city;

    /**
     * 交通信息
     */
    @TableField("transportation")
    private String transportation;
}